A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
1. Technical Field
This invention relates generally to computer operating systems, programs and databases, and more particularly, to graphic user interfaces allowing storage management and manipulation of multiple operating systems.
2. Background Information
This invention. relates generally to Graphic User Interfaces (GUI), applicable to various computer operating systems, including Multiple and Super Operating Systems. Specifically, this invention enables such computers to allocate computer resources graphically to one or more operating systems from the same or different software developers and select one or more of the existing environments to boot and run on the computer. Thus the user will be able to operate on the same computer to select multiple applications from various suppliers designed for various stand-alone operating systems or computers.
This invention is particularly useful in conjunction with super or higher level multiple operating systems or multi-boot environments. Super operating systems allow computer users to load multiple operating systems from secondary storage into main memory. This option frees the user from having to purchase software programs that are compatible with only one operating system, and further enables the user to benefit from the strengths of more than one operating system without having to maintain multiple computers.
The cornerstone of a super operating systems GUI is system virtualization, in which physical devices, such as a hard disk and memory, are mapped repeatedly or partitioned into a number of logical devices, each containing a separate operating system. These partitions, however, need to be set up as stable and rigid partitions or mappings so that the operating systems do not mix, intermingle, call on each other, or exchange data, unless the user desires such exchange. It would thus be beneficial to the prior art to provide a GUI mechanism that enables such system management locally or remotely.
Similarly, when certain operating systems, such as the Windows family of operating systems, are loaded from secondary storage to main memory, they are designed to monopolize and re-configure the entire computer system, including secondary storage devices, to suit their particular requirements and parameters. If more than one operating system is to co-exist in the same physical device (as is the case in super operating systems), then such operating systems must be restricted from accessing any portion of the secondary storage address blocks that contain the other operating systems. Therefore, it would be beneficial to the prior art to provide a GUI tool for a user to manage system resources and restrict access to pre-specified resources.
Typically, upon Power On or Restart the computer BIOS transfers (or boots) the single operating system that controls the entire computer resources. These resources are distributed and managed between the applications, users or system invoked for operation. This GUI invention will allow the users to run optionally any application they wish run on their computer, by allowing the user to allocate and manage the system resources between one or more environments, such as cabinets or partitions, using one or more operating systems compatible with that system""s hardware.
Furthermore, this GUI will facilitate user access to the Internet with or without traditional browsers by using any applications, both Operating System (OS) present and No-OS stand-alone, capable of communication with the Internet or another remote computer.
This GUI also facilitates local or remote reporting or manipulation of computer system environments, including storage size, user time allocation, user privileges, sharing and security of data, separations of potential users (such as parents and children, teachers and students or classes), different accounting periods and systems.
When different users use a computer system at different times, there is currently no operating-system-independent way to protect the data appropriate for one user from other users.
For instance, parents who use a computer for business purposes cannot, in general, protect their critical data while allowing children to play games on the same system. It would therefore be beneficial to the prior art to provide a GUI Interface for allocation of secondary storage device that can restrict access to a pre-specified section, independent of any operating system, in the form of Virtual Cabinets (Cabinet Records, hereinafter referred to as xe2x80x9cCabinetsxe2x80x9d). A cabinet is defined herein as a virtual storage device, capable of containing, typically through the use of virtual table of content pointers, all (or partitions of) shared (or non-shared) operating systems, application software (both OS dependent and No-OS embedded), databases and memory.
Prior art known in the industry includes power management and configuration tools and standards such as Advanced Configuration and Power Interface (ACPI), System Table of Contents and Organizations such as Flash Vos Dynamic or Static Virtual Table of Contents (VTOC) and Self Virtualizing Storage. ACPI is a power management specification that enables the operating system to control the amount of power given to each device attached to the computer. With ACPI, the operating system can turn off peripheral devices, such as CD-ROM players, when they are not in use, or can automatically power up the computer as soon as an input device such as a mouse is moved. The Flash Vos Dynamic or Static Virtual Table of Contents (VTOC) is part of a Storage Manager, wherein relevant identifying information is contained for each Partition of secondary storage. At least one Cabinet is created, containing a list of Partitions. Each Cabinet can have a separate list of Partitions, and each Partition can be included in more than one Cabinet. One of the Cabinets is designated as an Active Cabinet. Upon continuation of the boot sequence, the contents (i.e., the list of Partitions within that Cabinet) replace the Partition list of the secondary storage device. If the secondary storage device is bootable, then the Partition within that Cabinet marked as bootable is bootstrapped and is loaded into main memory. The contents of the Partitions and Cabinets may be modified by a user through a graphic user interface, such as described in this invention.
Other related art includes Graphic User Interfaces such as Windows or Xwindows, Bitmap Graphics, VGA, SVGA, User Prompting, Pointing Devices and Internet (including HTML) interfaces, all of which are known by those skilled in the art of computer programming.
Prior art patents include the Eick ""998 Patent (U.S. Pat. No. 5,945,998, issued Aug. 31, 1999). The ""998 Patent discloses a software apparatus that displays subentities in a computer program graphically, to allow the user to go to a subroutine or subentity without scrolling. The ""998 Patent does not teach movement of operating systems within a super operating system environment to specified cabinets, partition modification or remote location control of partition setup.
This invention is a Graphic User Interface that enables a user to virtualize a computer system and to define secondary storage physical devices, in single or multiple/super operating system environments. The system, at its firmware level, enables a user to define and alter the address boundaries of the physical devices and memory. The address boundaries of the physical devices are defined by the address boundaries of one of the logical devices, which has been partitioned or remapped within that physical device. Because such boundary definitions can be implemented at the firmware level of the physical device, every address access request, regardless of its origin and regardless of the origin of the request (i.e., the software component issuing the request), can be subject to the firmware-defined boundaries.
Accordingly, the objectives of this invention are to provide, inter alia, a Graphic User Interface and functions that:
graphically defines multiple functions for allocation of system resources for use in multiple operating systems or no operating system (No-OS or embedded) environments;
graphically defines any size of feature windows and totally hide them if necessary;
save the specific views as needed for all function windows;
enable restricted partitioning and supports storage virtualization;
allows the remote management of any of the operating systems through selection of any bootable cabinet or partition upon invoking the OS Manager component of the GUI; and
enables such partitioning and supports such storage virtualization regardless of the origin of an address request and independent of any operating system.
The functions are performed in the following organizations:
System and OS Functions
Partition Tools and Functions:
Create, Delete, Format, Copy, Resize, Zip or Pack, Set Bootable
Cabinet Tools and Functions:
List, View, Default Boot, Boot, Create, Delete, Virtualization, Set Attributes, Invoke Cabinets
Operating Systems Tools and Functions:
Boot Option, Size, Logo, Security, Resources and Management.
Internet Functions
This GUI window allows the user to use the Internet to remotely select other systems and organizations that are frequently accessed to be tailored and available for direct communication with or without requiring a specific (OS Dependent or Independent) browser or link up program.
User Functions
This window allows the user to select his most commonly used applications regardless of the specific OS or No OS environment and quickly access them from the GUI.
Flash Vos Site access
This GUI option allows users to access the Flash Vos Web site for update of their software, purchase or license of additional software and or information and products.
Management Functions
The GUI provides a Local and Remote Management Option for any number of the supported OS environment(s). Examples of such support management tools include Intel""s Landesk, CA""s Unicenter, Flash Vos and Norton Utilities.
Other objects of the invention will become apparent from time to time throughout the specification hereinafter disclosed.